
#pragma once

#include "cyber/plugin_manager/plugin_manager.h"
#include "modules/planning/planning_interface_base/scenario_base/stage.h"

namespace apollo {
namespace planning {

class TrafficLightLeftTurnWaitingZoneStageApproach : public Stage {
public:
    StageResult Process(const common::TrajectoryPoint& planning_init_point, Frame* frame) override;

private:
    StageResult FinishStage(std::string next_stage);
};

CYBER_PLUGIN_MANAGER_REGISTER_PLUGIN(
        apollo::planning::TrafficLightLeftTurnWaitingZoneStageApproach,
        apollo::planning::Stage)

}  // namespace planning
}  // namespace apollo